A high-level, very casual, and often self-deprecating look at trends in catches of Tyee salmon in Campbell River’s legendary Tyee Pool. All data exploration is being completed for fun and to learn some new tools (namely R Markdown and plotly).
There are far more technical ways of examining this data, but they aren’t as much fun - and are frankly hard. This analysis is living and will evolve over time. All results and interpretation are purely speculative and should be considered nothing more than ramblings of a fish nerd.
This analysis uses the following publicly available data:
This is certainly an interesting dataset, especially given it is the Tyee Club centenary, but it has its limitations. For example, there is no information on effort (# boats per day) and biological data is limited (e.g. size, girth and age of tyees or number of undersized fish captured).
(* more like what have other learned about Campbell River Chinook Salmon, I don’t know much).
There has been a lot of information collected on Campbell River Chinook Salmon, including from Tyee Salmon captured in the Tyee Pool, however, most of this data is not readily available online. Data that is available (and that I have found) is summarized below.
2.1.1 Spawn Timing
2.1.2 Age Class Structure
A roughly equal proportion of spawners return to the Campbell River as age-4 and age-5 fish (see Table 1) Sturham et al. 1999.
However, Ewart & Anderson,2013 report that Age-5 fish were dominant in 2012 (61%), with Age-4’s accounting for only 37% of the run, and age-3’s representing only 2%.
2.1.3 Size-at-Age
2.1.4 Fecundity
2.1.5 Juvenile Life History
2.1.6 Estimated Juvenile Production
2.1.7 Estimates of Marine Survival
2.1.8 Hatchery Influence and Population Status
| Waterbody | Age | n | % of Total | Size Range (mm) |
Mean Lenght (mm) |
|---|---|---|---|---|---|
| Campbell River | 3 | 6 | 7.9 | 500 - 699 | 595.0 |
| Campbell River | 4 | 34 | 44.7 | 550 - 949 | 779.5 |
| Campbell River | 5 | 35 | 46.1 | 700 - 949 | 842.5 |
| Campbell River | 6 | 1 | 1.3 | 900 - 949 | 930.0 |
| Quinsam Hatchery | 3 | 76 | 20.2 | 400 - 749 | 619.5 |
| Quinsam Hatchery | 4 | 225 | 59.8 | 550 - 899 | 743.5 |
| Quinsam Hatchery | 5 | 73 | 19.4 | 700 - 949 | 834.0 |
| Quinsam Hatchery | 6 | 2 | 0.5 | 750 - 849 | 784.0 |
| Quinsam River | 3 | 46 | 22.8 | 500 - 849 | 663.0 |
| Quinsam River | 4 | 114 | 56.4 | 550 - 949 | 733.5 |
| Quinsam River | 5 | 40 | 19.8 | 700 - 949 | 818.0 |
| Quinsam River | 6 | 2 | 1.0 | 800 - 849 | 838.0 |
2.2.1 They are decreasing in size and age at maturity
2.2.2 Survival rates have collapsed and returns are decreasing
Welch et al. 2018 used coded-wire tag data to look at large scale patterns of Chinook salmon survival. This data demonstrates that survival collapsed over the past half century by a factor of ~3 and is currently ~1% in many regions (consistent with estimates available for the Campbell). Survival in relatively pristine and undeveloped regions (e.g. Northern BC and Alaska) was comparable to areas with extensive water management and land development that were previously considered to have poorest survival (e.g. Columbia River). The authors suggest the widespread trends in survival may be evidence that marine conditions are more influential than local factors (e.g. freshwater habitat).
Similar trends have been observed in other species. For example, Price et al. 2021 found a 69% reduction in wild Sockeye salmon returns (though overall returns are comparable to historic levels due to intensive enhancement); that population diversity has decreased by ~70%, and; that life history diversity has shifted with populations now migrating from freshwater earlier and remaining at sea for longer.
2.2.3 Enhancement levels have never been higher
2.2.4 I am not the only person who doesn’t understand what is going on
So, let’s begin by having a look at the catch data from the Tyee pool and seeing how catches fluctuate relative to Chinook Salmon escapement in the Campbell River.
Figure 1: Trends in Tyee Salmon captures and Campbell River Chinook Salmon escapement.
A quick look at Tyee catches (blue vertical bars) in Figure 1 shows:
If we look at Escapement data (blue line) shown in Figure 1 , we can see:
Now, lets see when fish are most frequently captured throughout the season, and if there has been a change over time.
Figure 2: Total fish captured by date and decade
HEY! Who let someone register a Tyee in the first week of July!? This plot will become a lot more interesting once I can get my hands on some historical data.
At it’s most basic level, there are four things that are likely affecting catches of Tyee salmon (in reality, there are many many many many many more.
3.1.1. Juvenile recruitment
3.1.2. Marine survival and productivity
3.1.3. Fishing effort and catchability
3.1.4. Fishing Conditions
Off the top of my head there are two ways we can approach this:
1.) We can look at what factors influenced how many fish were available for capture in the Tyee pool (i.e. how historic conditions may have contributed to observed captures), and/or;
2.) We can look at what factors influenced how returning fish were captured (i.e. conditions during the fishing season)
We can VERY CRUDELY estimate the number of salmon that should return to the Campbell River if we make a couple of big assumptions:
Fecundity is ~5,700 eggs per female (Ewart & Anderson, 2013
Sex ratios are 60:40 female to male using Sturham et al. 1999) data for Campbell River)
Egg-to-fry survival is approximately 0.1, can’t recall where this number came from but its commonly used as a measure of egg-to-fry survival of wild fish (compared to 0.9 for hatchery reared fish). Give results from Thornton et al. 2022 it is likely that egg-to-fry survival in the Campbell is higher.
Marine survival (smolt to adult) is approximately 0.003 (Ewart & Anderson, 2013
7.9% of fish will return as Age-3, 44.7% of fish will return as Age-4 fish, 46.1% will return as Age-5 fish and 1.3% will return as Age-6 fish.
We can expand this to estimate the number of Tyee salmon that will return if we make even more assumptions!
If we run these numbers, each female will generate 1.7 offspring, of which 0.14 will be Age-3, 0.76 will be Age-4, 0.79 will be Age-5 and 0.022 will be Age-6. Furthermore, each female will produce 0.32 Tyee salmon. Let’s take a moment to remember that these assumptions are terrible. Larger fish are more likely to produce larger fish, so in reality some fish will produce a decent number of Tyee and others will produce none. But let’s keep it simple for now and assume every fish is able to make an equal number of Tyees
Based on this, each female should produce 1.71 offspring that return to spawn. Which is less than ideal.
Figure 3: Predicted returns by age-class relative to measured escapement, assuming 10% egg to fry survival.
Well that’s interesting. There are periods when my predicted returns closely align with actual escapement (most closely from 2003 to 2007, but my values are comparable from 2003 to 2010). This suggests my estimates may not be WAY off but does not confirm they are correct. Other notes:
How does this change if we increase egg-to-fry survival to 0.2?
I wonder how my predicted tyee returns align with actual tyee captures.
Figure 4: Comparison of catches of Tyee Salmon, predicted returns of Tyee Salmon and annual Chinook Salmon escapement counts.
Well, even though my estimates are clearly wrong, this is still interesting. There is a fairly drastic shift in predicted returns that coincides with the crash in 2014. Prior to the crash, predicted returns are consistently underestimated (73% of years are less than actual catches) whereas after the crash predicted Tyee returns are greater than total tyee catches in all but one year. Not sure exactly what this means, or how to interpret it, but I think its worth considering:
So, what happened in 2014!? Did runs crash everywhere? Let’s have a look at escapement in other systems in the area.
Figure 5: Chinook Salmon escapement from rivers on East and West Coast of Vancouver Island.
Well, that figure sucks. But it shows how variable escapement is between years. On the East Coast of the Island, abundance increased in ’r format(3/7*100, digits = 2)`% of plotted streams and decreased in all others. Decreases
Relative to 2013, abundance in all plotted west coast streams was slightly reduced in 2014. There was a major crash in the Burnam River, but this is exaggerated by unusually high returns in 2013, 2015 and 2016.
Last year there was a lot of speculation that high flows in the Campbell River may have caused fish to move directly into the river rather than staging in the pool. Let’s look at flow in the Campbell River to see how 2022 flows compared to previous years.
Figure 6: Catches of Tyee Salmon since 2016 relative to flow in the Campebll River.
Well, it’s clear that flows in 2022 were higher than past years and higher than mean flows over the past 5-years. But this doesn’t mean that is why fewer fish were captured. Either way let’s take a closer look at the correlation between flow and capture.
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
Figure 7: Relationship between river flow and fish capture
Figure 7 shows a strong negative relationship between discharge and the number of fish that are captured. This is what you would expect, that fish will hold in the pool while flows are low and that they will move into the river when flows are higher and they can safely navigate upstream. However, the fishery occurs during the late summer, when flows are typically low and it is possible that the timing of the fishery has contributed to observed trends.
OK, well there is a relationship (that could be due to a number of things). Lets have a look at some of the older data.
Figure 8: Catches of Tyee Salmon since 2007 relative to flow in the Campebll River.
Let’s look at commercial catches. Maybe there is a fishery that could be intercepting a large number of Tyees.
can.catch <- comm.catch %>% rename(Catch.Type = 'Catch Type',
Data.Type = 'Data Type') %>%
mutate(Area = as.factor(Area),
Species = as.factor(Species),
Year = as.numeric(Year),
Catch.Type = as.factor(Catch.Type)) %>%
filter(Country == "Canada",
Year >= 1997,
Data.Type == "Number (000's)")
can.catch.cn <- can.catch %>% filter(Species == "Chinook",
Area == "Whole country")
CN.catch.plot <- ggplot(can.catch.cn) +
geom_line(aes(x = Year, y = Total.Catch, color = Catch.Type)) +
labs(x = "Year", y = "Total Catch (0000's of fish") +
theme_bw()
CN.catch.plot
can.catch.cn2 <- can.catch %>% filter(Species == "Chinook",
Catch.Type == "Sport")
summary(can.catch.cn2)
## Country Whole Country/Province/State
## Length:125 Length:125
## Class :character Class :character
## Mode :character Mode :character
##
##
##
##
## Area Species Catch.Type
## Haida Gwaii :25 Chinook:125 Commercial : 0
## North Coast :25 Cherry : 0 Sport :125
## South Coast :25 Chum : 0 Subsistence: 0
## West Coast Vancouver Island:25 Coho : 0
## Whole country :25 Pink : 0
## Amur River Basin : 0 Sockeye: 0
## (Other) : 0 (Other): 0
## Data.Type Year Total.Catch
## Length:125 Min. :1997 Min. : 0.00
## Class :character 1st Qu.:2003 1st Qu.: 25.80
## Mode :character Median :2009 Median : 54.00
## Mean :2009 Mean : 77.34
## 3rd Qu.:2015 3rd Qu.: 92.49
## Max. :2021 Max. :306.68
##
CN.catch.plot2 <- ggplot(can.catch.cn2) +
geom_line(aes(x = Year, y = Total.Catch, color = Area)) +
labs(x = "Year", y = "Total Catch (0000's of fish") +
theme_bw()
CN.catch.plot2
can.catch.sk <- can.catch %>% filter(Species == "Sockeye")
colnames
## function (x, do.NULL = TRUE, prefix = "col")
## {
## if (is.data.frame(x) && do.NULL)
## return(names(x))
## dn <- dimnames(x)
## if (!is.null(dn[[2L]]))
## dn[[2L]]
## else {
## nc <- NCOL(x)
## if (do.NULL)
## NULL
## else if (nc > 0L)
## paste0(prefix, seq_len(nc))
## else character()
## }
## }
## <bytecode: 0x000002accbe05d30>
## <environment: namespace:base>
summary(can.catch.cn2)
## Country Whole Country/Province/State
## Length:125 Length:125
## Class :character Class :character
## Mode :character Mode :character
##
##
##
##
## Area Species Catch.Type
## Haida Gwaii :25 Chinook:125 Commercial : 0
## North Coast :25 Cherry : 0 Sport :125
## South Coast :25 Chum : 0 Subsistence: 0
## West Coast Vancouver Island:25 Coho : 0
## Whole country :25 Pink : 0
## Amur River Basin : 0 Sockeye: 0
## (Other) : 0 (Other): 0
## Data.Type Year Total.Catch
## Length:125 Min. :1997 Min. : 0.00
## Class :character 1st Qu.:2003 1st Qu.: 25.80
## Mode :character Median :2009 Median : 54.00
## Mean :2009 Mean : 77.34
## 3rd Qu.:2015 3rd Qu.: 92.49
## Max. :2021 Max. :306.68
##
CN.catch.plot
sk.catch.plot <- ggplot(can.catch.sk) +
geom_line(aes(x = Year, y = Total.Catch, color = Species, linetype = Catch.Type))
sk.catch.plot
###Notes Plot peak flows 4 to 5 years previous (e.g. impact of peak flows on recruitment). - Assume mortality at >200 cms - spawning habitat lost at 300-400 cms - Is Quinsam flow regulated? Ask Mary.
Is return age genetic? Or environmental?
| Waterbody | Sex | Age | n | % of Total (by Sex) |
% of Total (by Stream) |
Size Range (mm) |
Mean Lenght (mm) |
Std. Error |
|---|---|---|---|---|---|---|---|---|
| Campbell River | F | 3 | 0 | 0.00 | 0.00 | 500 - 699 | 595 | 20.82 |
| Campbell River | M | 3 | 6 | 0.19 | 0.08 | 500 - 699 | 595 | 20.82 |
| Campbell River | F | 4 | 21 | 0.48 | 0.28 | 700 - 899 | 783 | 10.69 |
| Campbell River | M | 4 | 13 | 0.41 | 0.17 | 550 - 949 | 776 | 23.30 |
| Campbell River | F | 5 | 23 | 0.52 | 0.30 | 750 - 949 | 839 | 7.51 |
| Campbell River | M | 5 | 12 | 0.38 | 0.16 | 700 - 949 | 846 | 14.43 |
| Campbell River | F | 6 | 0 | 0.00 | 0.00 | 900 - 949 | 930 | 0.00 |
| Campbell River | M | 6 | 1 | 0.03 | 0.01 | 900 - 949 | 930 | 0.00 |
| Quinsam Hatchery | F | 3 | 9 | 0.04 | 0.02 | 550 - 749 | 644 | 15.33 |
| Quinsam Hatchery | M | 3 | 67 | 0.38 | 0.18 | 400 - 749 | 595 | 6.84 |
| Quinsam Hatchery | F | 4 | 130 | 0.65 | 0.35 | 600 - 899 | 742 | 3.77 |
| Quinsam Hatchery | M | 4 | 95 | 0.54 | 0.25 | 550 - 899 | 745 | 5.64 |
| Quinsam Hatchery | F | 5 | 61 | 0.30 | 0.16 | 700 - 949 | 823 | 5.76 |
| Quinsam Hatchery | M | 5 | 12 | 0.07 | 0.03 | 750 - 949 | 845 | 13.57 |
| Quinsam Hatchery | F | 6 | 1 | 0.00 | 0.00 | 800 - 849 | 812 | 0.00 |
| Quinsam Hatchery | M | 6 | 1 | 0.01 | 0.00 | 750 - 799 | 756 | 0.00 |
| Quinsam River | F | 3 | 1 | 0.01 | 0.00 | 700 - 749 | 700 | 0.00 |
| Quinsam River | M | 3 | 45 | 0.41 | 0.22 | 500 - 849 | 626 | 12.07 |
| Quinsam River | F | 4 | 58 | 0.63 | 0.29 | 650 - 849 | 744 | 4.73 |
| Quinsam River | M | 4 | 56 | 0.51 | 0.28 | 550 - 949 | 723 | 9.35 |
| Quinsam River | F | 5 | 31 | 0.34 | 0.15 | 700 - 949 | 830 | 7.54 |
| Quinsam River | M | 5 | 9 | 0.08 | 0.04 | 700 - 949 | 806 | 21.00 |
| Quinsam River | F | 6 | 2 | 0.02 | 0.01 | 800 - 849 | 838 | 2.83 |
| Quinsam River | M | 6 | 0 | 0.00 | 0.00 | 800 - 849 | 838 | 2.83 |